package com.jg.visitor.common.utils;

import org.springframework.util.StringUtils;

import java.util.Arrays;
import java.util.Objects;

public class CheckParamUtils {

    public static boolean isAnyStringEmpty(String... params){
        return Arrays.stream(params).anyMatch(StringUtils::isEmpty);
    }


    public static boolean isAnyParamNull(Object... params){
        return Arrays.stream(params).anyMatch(Objects::isNull);
    }

    /**
     * 判断请求路径是否不需要校验登录状态
     */
    public static boolean checkUrlLoginNotAllowed(String path){

        //找到需要登录权限的，只要不是这些路径，都不需要检验登录状态
        return
                path.startsWith("/api/account/logout")
                || path.startsWith("/api/approver")
                || path.startsWith("/api/admin");
    }

    /**
     * 判断请求路径是否不需要校验openid
     */
    public static boolean checkUrlBaseAllowed(String path){

        return
                //账号公共接口
                path.startsWith("/api/account/wechat-init")
                //签到签退接口
                || path.startsWith("/api/reception")
                //文件公共接口
                || path.startsWith("/images")
                //模板允许随意下载
                || path.startsWith("/api/upload/download-batch-add-template")
                //swagger,公共接口
                || path.startsWith("/doc.html")
                || path.startsWith("/swagger")
                || path.startsWith("/webjars")
                || path.startsWith("/favicon")
                || path.startsWith("/v2/api-docs");
    }
}
